
#include <Engine/Component.h>
#include "Impl_Render.h"

_BeginNamespace(Radix)
_BeginNamespace(Engine)
_BeginNamespace(Component)
_BeginNamespace(Direct3D)

IComponent* gRenderSystem = nullptr;

extern "C" __declspec(dllexport) bool InitComponentModule(IComponentSystem* componentSystem)
{
	gRenderSystem = new RenderSystem();
	return componentSystem->attachComponent(gRenderSystem);
}

extern "C" __declspec(dllexport) void ExitComponentModule(IComponentSystem* componentSystem)
{
	componentSystem->detachComponent(gRenderSystem);
	delete gRenderSystem;
	gRenderSystem = nullptr;
}

_EndNamespace(Direct3D)
_EndNamespace(Component)
_EndNamespace(Engine)
_EndNamespace(Radix)
